Fountain codes (for example, Luby Transform (LT) codes, raptor codes, and online codes) are a class of codes that do not have a fixed code rate and exhibit a property that an original message can be recovered from a subset of encoding symbols.
Communication systems that use fountain codes may include an encoder and a decoder. The encoder encodes data blocks into communication blocks or packets using a pseudorandom number generator. The encoder transmits the communication blocks or packets to the decoder over a communication channel. The decoder decodes the received communication blocks or packets using a pseudorandom number generator. Generally, the pseudorandom number generators in the encoder and decoder are synchronized.
Skilled artisans will appreciate that elements in the figures are illustrated for simplicity and clarity and have not necessarily been drawn to scale. For example, the dimensions of some of the elements in the figures may be exaggerated relative to other elements to help to improve understanding of embodiments of the present invention.
The apparatus and method components have been represented where appropriate by conventional symbols in the drawings, showing only those specific details that are pertinent to understanding the embodiments of the present invention so as not to obscure the disclosure with details that will be readily apparent to those of ordinary skill in the art having the benefit of the description herein.